/*
******************************************************************************************************* 
**  Copyright (C) 2019
**  All rights reserved. 
** 
**  FileName:       	spi_flash.h
**  Description:	
**  Author:        	 
**  Version				v0.1
**  Date:           	2019-06-21
**	Function List�� 
**  History:         
*********************************************************************************************************
*/
/*
*********************************************************************************************************
*                                              	调试开关
*********************************************************************************************************
*/

#ifndef _SYSTEM_FILE_H_
#define _SYSTEM_FILE_H_

//#ifdef __cplusplus
//extern "C" {
//#endif
/*
*********************************************************************************************************
*                                              头文件
*********************************************************************************************************
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "system_cfg.h"
#include "ff.h"
#include "diskio.h"
#include "string.h"
#include <regex>
#include <string>
/*
*********************************************************************************************************
*                                              宏定义
*********************************************************************************************************
*/
#define IAP_FILE_NAME						"0://iap.ini"		/*iap文件名*/
#define ERROR_LOG_FILE_NAME     "0://error.log"     /*错误log文件名*/
#define CONFIG_FILE_NAME        "0://config.ini"    /*配置文件名*/
#define IAP_BACKUP_FILE_NAME		"0://app_backup.bin"/*出厂备份文件 */

#define IAP_FILE_LEN            32
#define CONFIG_FILE_LEN         1024
#define CONFIG_MAX_KEY					32
/*
*********************************************************************************************************
*                                              	结构体定义
*********************************************************************************************************
*/
class CONFIG_FILE{
	private:
		char file_buff[CONFIG_FILE_LEN];
		FIL fhandle;
	public:
		CONFIG_FILE(void);
		uint8_t config_file_read(void);
		char* config_file_get_value(char* key);
		int config_file_get_int(char* key);
		uint8_t config_file_clear(void);
};

enum{
    FILE_SUCCESS = 0,
    FILE_FAILED = 1,
};


/*
*********************************************************************************************************
*                                              全局变量定义
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*                                              	函数声明
*********************************************************************************************************
*/
char* iap_file_read(void);
uint8_t iap_file_write(char*);
uint8_t iap_file_clear(void);
uint8_t error_file_wirte(char*);
uint8_t error_file_clear(void);
//char* config_file_get_value(char* key);
//int config_file_get_int(char* key);
//uint8_t config_file_clear(void);

//#ifdef __cplusplus
//}
//#endif
#endif
